home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1996 #15
/
Monster Media Number 15 (Monster Media)(July 1996).ISO
/
os2
/
pcios2.zip
/
PCI_FAQ
< prev
next >
Wrap
Text File
|
1996-06-06
|
22KB
|
456 lines
Document: PCI Frequently Asked Questions list
Maintainer: Patrick Duffy, duffy@theory.chem.ubc.ca
Revision Dates: 9/13/95, 11/26/95, 5/18/96, 5/26/96
Archived at: ftp.netcom.com, in directory /pub/ab/abe/
CompuServe (GO BENCHMARK)
Web pages: http://warp.eecs.berkeley.edu/os2/workbench/work.htm
http://www.os2forum.or.at/english/info/os2hardwareinfo/
(note that the first URL may not have up-to-date
versions of the lists)
This document is intended for use by individuals and corporations in a
non-commercial manner. It may be distributed freely within those
limitations. Commercial use of this document in any manner requires
prior written permission of the author.
This is the PCI Frequently asked Questions list. It is designed to
provide a beginning guide to what is turning out to be the dominant bus
standard among PCs. It attempts to answer all of the following
questions: Dates in brackets indicate the last revision date for the
related entry.
1) What's PCI?
2) How does the PCI bus compare with:
a) ISA
b) EISA
c) VL
d) MCA
3) What are the features of the various PCI revisions?
a) 2.0
b) 2.1
4) How can I obtain more information about the PCI specification?
a) How to obtain the PCI specification
b) How to obtain more general information
5) I've heard that many new PCI chipsets support EDO RAM. What is EDO
RAM and how will it benefit me?
6) I would like my new Pentium system to use parity RAM. Which chipsets
will make use of parity RAM?
7) How fast is the PCI bus running in my system?
8) I'm upgrading from an ISA/VL/EISA system:
a) What will still work in my new system?
b) What do I not need to replace?
c) What should I consider replacing?
d) When using a PCI motherboard, if i don't replace my sound
and I/O card won't it slow down the PCI board?
e) What types of motherboards will work best?
f) How much faster will my new system be?
------------------------------------------------------------------------
1) What's PCI? (5/18/96)
PCI, or Peripheral Component Interconnect is, briefly, a new way of
interconnecting the peripherals (cards you plug into the motherboard)
with both the system memory and the CPU. It was designed from the start
to alleviate many of the headaches that installation of a new card into
an ISA bus-based computer would cause (IRQ conflicts, address conflicts,
etc.). All PCI standards are set by a committe to ensure wide industry
support. Some of its major features:
a) Multiple busmasters on the same bus. (Several SCSI controllers
running at the same time, for example.)
b) Auto-configuring. All components which plug into the PCI bus will
be configured by the BIOS, making jumpers for this unnecessary.
c) IRQ sharing. The PCI bus is able to share a single interrupt
between cards.
d) High bus bandwidth. The PCI bus runs at a maximum rate of 33 MHz
(66 MHz in PCI 2.1 -- see later) and is capable of transferring 32
bits (4 bytes) per clock cycle, for a maximum throughput of 132
(264 in PCI 2.1) MB/sec (though bus latency times usually lower
this to significantly less than maximum in real implementations).
e) Multiple functions on one card. The PCI specification allows for
up to 8 functions (video, sound...) on a single card.
The PCI bus works with two different types of cards: 3.3 volt and 5
volt. These two different types of cards cannot be accidentally plugged
into the wrong slot, as the "keys" for the cards are on opposite ends of
the slot (most currently shipping motherboards have 5 volt connectors).
Of course the 3.3 volt and 5 volt cards won't work in the same slot,
with the single exception of cards which can operate with either voltage
(this is covered in the PCI spec). An interesting trivia note is that
the connectors used for PCI cards are the same as those used for MCA.
The PCI bus is also limited to a maximum of four slots per bus (for
technical reasons); if more PCI slots are desired then a PCI - PCI
bridge must be used, in the same way that PCI is bridged to other buses
now. Of those four slots, two must be able to accommodate a
busmastering device, and the busmaster-enabled slots must be labelled
somehow either on the board itself or in the manual for the board.
As a final note, not all PCI implementations are created equally. Some
PCI chipsets, for instance, do not support an (optional) feature called
"byte merging", in which writes to sequential memory addresses are
merged into one PCI-to-memory operation. (This will cause the bus to
have to actually wait for a 60 MHz Pentium CPU to catch up.) Some
motherboards (like the Intel boards, for example) will also
automatically configure the PCI bus for you, eliminating the need to
fiddle with any jumpers of any kind. (Others, like some of the oler
Asus boards, do not support this to my knowledge.)
------------------------------------------------------------------------
2) How does the PCI bus compare with:
a) tbe ISA bus? (5/18/96)
Right from the start, it should be apparent both that the PCI bus
is not compatible with ISA (even the expansion slots for the two
buses are different), and that technically PCI is much more
advanced than ISA. The ISA bus runs at a slower speed (8 MHz on
most systems, though on many PCI/ISA systems with enhanced ISA
timing the bus may be run at 10 or 11 MHz), does not allow for
multiple busmasters (only one may be on the bus at any one time)
and, because of the DMA controller it uses, will not allow
peripherals which employ DMA to directly address memory above 16
MB. ISA will auto-configure (with the latest BIOSes installed),
but will not share interrupts. The ISA bus will support a maximum
real-world data transfer rate of about 5 MB/sec (16 MB/sec is the
theoretical maximum; burst transfer rates may approach about half
of this), and uses a 16 bit data path.
The ISA bus, in spite of its technical inferiority to PCI, still
has a place in PC architecture, however; certainly you don't need
PCI-type bandwidth for 16 bit/44.1 kHz digital audio, and serial
ports are hardly taxing. For that matter, neither are 900+ Kb/s
CD-Rom and tape drives or ethernet 10Base-x. However, use of
these in combination with several other cards on the same (ISA)
bus (video, disk I/O, etc.) will severely limit performance on
most systems.
b) The EISA bus? (5/18/96)
The EISA bus is an attempt to extend ISA to a 32-bit bus which
allows for proper busmastering. While having the resulting
advantage of compatibility with the large number of ISA-based
cards in existence, this causes it to be slower than it could be,
as it transfers 32 bits per clock cycle but runs at 8 MHz (for a
theoretical maximum of 32 MB/sec). The EISA bus also does not
autoconfigure (I do not know if this has changed in the latest
revisions as it has with ISA), though it is capable of sharing
interrupts. EISA never really caught on, and appears to be fading
in popularity.
c) tbe VL bus? (8/27/95)
The VL bus was designed to overcome the speed limitations of the
ISA bus. It talks both directly to the CPU and the memory, and
typically runs at the external clock rate of the CPU (up to a
maximum of 40 MHz, though there are many boards which run at 50
MHz, strictly a violation of the VL spec's). As it is a 32-bit
bus, the high speeds at which it runs can make for some very fast
data transfers.
The VL bus has its limitations, however. For one, it truly is a
"local bus", meaning that it talks directly to memory and to the
CPU with no intervention from any bus arbitrators. Because of
this, there is the possibility that one bad card could cause
serious damage to the system. Also because of the local nature of
the bus, busmastering on the VL bus causes the CPU to be blocked
from accessing RAM while the busmaster is talking to it. VL is
limited to two or three slots per bus for power-consumption
reasons.
The VL bus, because it is simply an extension of the ISA bus, also
does not support autoconfiguring or IRQ sharing.
One additional problem not often mentioned is the physical length
of the card connectors. They are quite long and, as a result,
flexing the motherboard (as may occur when, say, an older case is
moved) may cause the VL part of the card to become partially
unseated, no matter how well clamped in it is at the ISA end.
d) the MCA bus? (5/26/96)
The MCA bus has very similar capabilities to the PCI bus. That is,
it supports IRQ sharing, multiple busmasters, etc., just as does
PCI. However, MCA does not autoconfigure in the same way that PCI
does (it must be done via a reference disk). The MCA bus used on
PS/2s typically runs at 10 MHz, and supports transfer rates of 32
bits/clock cycle (maximum) for a theoretical maximum rate of 40
MB/sec. The maximum possible data transfer rate for MCA is 160
MB/sec, though running the bus at this speed would break
compatibility with older cards.
MCA can be made to run as fast (or faster) than the PCI bus in
some cases as it has certain features which PCI does not. Most
notable among these features is "streaming", whereby the 32-bit
address bus is used to carry data as well as the 32 bit data bus
(PCI has only one 32-bit bus used for both addresses and data and
so cannot stream). In addition, the MCA bus may accommodate more
slots in a single bus than PCI; up to 10 may be present, so that a
bridge to another bus is generally not necessary. MCA also
apparently has lower latency times than does PCI; apparently PCI
slave (non-busmastering) accesses have longer latency times than
do equivalent accesses on MCA.
------------------------------------------------------------------------
3) What are the features of the various PCI revisions?
a) 2.0 (8/27/95)
Revision 2.0 of the PCI standard is currently implemented
in older-generation motherboards (for example, those using the
Neptune and Saturn chipsets). It has all the features and
limitations discussed in question (1).
b) 2.1 (5/18/96)
Revision 2.1 of the PCI standard is now widely available in the
new generation of shipping motherboards (for example, those which
employ the Intel Triton II chipset). It includes the following
changes from PCI 2.0:
- backwards compatible with PCI 2.0
If a PCI 2.1-compliant card and a PCI 2.0-compliant card are on
the same bus, the PCI bus will be run at 33 MHz instead of 66.
- 66 MHz (maximum) bus speeds
- Apparently also there are 64-bit extensions defined in PCI 2.1.
There are as yet, however, no PC implementations which support
them.
- PCI to PCI bridges, which will allow for more than three or four
PCI slots per motherboard. In addition, some PCI cards (such as
the Adaptec 3940 twin-channel SCSI controller) exploit this
bridging capability to obtain multiple SCSI channels in a single
PCI slot.
------------------------------------------------------------------------
4) How can I obtain more information about the PCI specification?
a) How to obtain the PCI specification (11/26/95)
The most direct way is to call Intel, at (800) 433-5177. This
will allow you to join the PCI special interest group, and to
obtain a copy of the latest PCI specifications. You can also
write to them:
PO BOX 14070
Portland, OR 97214
They sell the following PCI specification manuals:
PCI spec (general)
PCI bios spec
PCI multimedia guide (motion video)
PCI bridge spec
PCI mobile design guide (laptops)
b) How to obtain more general information (8/27/95)
If you don't need the whole specification but would still like a
little more information about PCI, I've found the following
documents (available from Intel FaxBACK, (800) 628-2283) to be
useful and relatively concise summaries. The numbers beside the
titles are the document numbers you'll need to order the
associated articles:
7048: PCI and VL-bus: What are the Differences?
7056: PC Basics: Bus Standards Explained (ISA, EISA, VL/VESA, PCI)
7108: PCI: Technical Description
7157: PCI Fundamentals
------------------------------------------------------------------------
5) I've heard that many new PCI chipsets support EDO RAM. What is EDO
RAM and how will it benefit me? (5/18/96)
The EDO in the name "EDO RAM" is an acronym for "Extended Data Out".
This means that the RAM can output data for longer periods of time
than conventional DRAM. It does this by holding data on the outputs
of the DRAM even while the next address to be read is being prepared.
As a result, there is an approximately 20 ns overlap between one read
and the next.
The fact that EDO RAM can output data for a longer period than
conventional RAM has several immediate consequences. The one of most
concern to OS/2 users is an artifact of OS/2's multitasking ability.
When OS/2 switches between tasks, it must load the mew task into
memory. Quite obviously, the faster it can do that, the faster the
task-switching will be, and the smoother the system will seem.
------------------------------------------------------------------------
6) I would like my new Pentium system to use parity RAM. Which chipsets
will make use of parity RAM? (5/18/96)
The Triton chipset does NOT use parity RAM (although some systems
will still accept parity RAM in the SIMM sockets without using it).
The SIS chipset, the Mercury chipset, and the Neptune chipset all are
capable of taking and using parity RAM, and the Triton II (430HX)
chipset will use parity and ECC RAM as well. Of these chipsets, only
Triton II has built-in IDE, so it may be in your best interest to
make sure that your motherboard has good outboard IDE controller if
no IDE services are present on the PCI chipset itself. Check with
your system vendor if you're in doubt.
------------------------------------------------------------------------
7) How fast is the PCI bus running in my system? (5/26/96)
The speed of the PCI bus is, in general, governed by three things:
your processor speed, the chipset your motherboard uses, and the PCI
peripherals you have plugged in to your PCI bus.
First, the processor speed: Different processors have different
external clock rates (as you may well know). A table of these is
shown below. I've limited my discussions to Intel Pentium CPUs, but
the same general comments apply to all CPUs.
Processor External clock speed
-----------------------------------------
P5-75 50 MHz
P5-60, 90,150,180 60 MHz
P5-66,100,133,166,200 66 MHz
-----------------------------------------
The PCI bus speed is (in all cases of which I know) determined by
taking the external clock speed of the CPU and dividing it by some
number. The number used depends on two things:
Most PCI chipsets determine the PCI bus speed by taking the external
clock speed of the CPU and dividing it by two. Therefore, the PCI
bus would run at the following rates given the following CPUs:
Processor PCI bus clock speed
-----------------------------------------
P5-75 25 MHz
P5-60, 90,150,180 30 MHz
P5-66,100,133,166,200 33 MHz
-----------------------------------------
However, some new chipsets (like Orion for the Pentium Pro and Triton
II for the Pentium) can run the PCI bus as fast as 66 MHz at the same
rate as the external CPU clock speed.
This does not happen automatically, though. In order to obtain the
enhanced bus speeds, both the PCI bus itself and all PCI peripherals
attached to that PCI bus must be capable of running at that rate.
First, if the motherboard itself does not support 66 MHz speeds (and
66 MHz is an option in PCI 2.1, not a requirement), it does not
matter if you have all 66 MHz-capable cards in your system; the bus
will be run at whatever maximum the board will accommodate. If the
motherboard _is_ capable of 66 MHz bus speeds, and if you have even
_one_ peripheral attached to the bus which is not capable of
accommodating 66 MHz bus speeds, the chipset will run the bus at a
maximum of 33 MHz (the 2.0 specification). I know of no current 66
MHz-compliant peripherals or motherboards, and I suspect that when
they do appear, they will be expensive; 66 MHz bus timings make for
difficult motherboard and peripheral design. Count on 33 MHz maximum
bus speeds to be the real-world norm for a while yet.
------------------------------------------------------------------------
8) I'm upgrading from an ISA/VL/EISA system:
a) What will still work in my new system? (8/27/95)
Assuming the cards you used in your old system were all of
reasonable quality and sound implementation, all of what you had
before should still work now. "Should" is the operative word
here; if you're unsure, ask to try the card in the new system. Of
course, if you have a VL card, you'll need a VL slot on your new
PCI board into which you can plug it. The same goes for ISA and
EISA cards as well.
b) What do I not need to replace? (8/27/95)
There are no PCI sound cards, so you definitely do not need to
look into replacements for any that you might have. In general as
well, because of their low bandwidth, I/O cards can be re-used
(serial/parallel/game), as can I/O cards dedicated to
low-bandwidth peripherals such as CD-ROM and MO drives.
c) What should I consider replacing? (5/18/96)
If you have a busmastering ISA SCSI controller, replace it with a
PCI-equivalent one. Not only will it allow for faster data
transfers, it will also make moot the problems which ISA has with
16 MB memory limitations and busmastering controllers. You will
also get proper busmastering (i.e. the CPU can access memory while
the cards do), and just in general better performance. The
upgrade need not be expensive either; PCI SCSI controllers based
on the NCR chip (see the PCI SCSI controller list) are available
for less than $100.
ISA-based video cards are also a prime candidate for replacement.
The higher bandwidth of PCI will allow for faster screen draws
when running at high colour depth, and you won't need to worry
about setting or unsetting memory apertures or any of that.
d) When using a PCI motherboard, if i don't replace my sound
and I/O card won't it slow down the PCI board? (8/27/95)
No it won't. The sound and I/O cards are on the ISA bus (in
general), and so will have no effect on the PCI bus. In addition,
components on the ISA (and PCI) bus operate independently, so that
a slow serial port (for example) will not slow down the hard disk
controller. The only instance in which performance might be
adversely affected is if the system must wait for a serial port or
sound card operation to finish before it may proceed with another
task. As OS/2 is multitasking, however, this is extremely
unlikely to occur.
e) What types of motherboards will work best? (8/27/95)
All different types of motherboards (those with bridges to
ISA/EISA/VL slots) can be made to work well, and many do.
Generally PCI/ISA motherboards are all well-implemented, as are
PCI/EISA. The problem comes, however, when dealing with PCI/VL
boards. Many of these let the VL bus talk to the CPU, and then
bridge the PCI bus to the VL bus. Doing so causes a performance
hit on the PCI bus. If you must have a PCI/VL motherboard, ensure
that the CPU is bridged directly to the PCI bus, and that any VL
buses are bridged to the PCI bus. (Only one of which I know, the
Asus AVP4, implements VL in this manner.)
f) How much faster will my new system be? (8/27/95)
Ironically enough, unless you've bottlenecked your system (by
using fast hard drives and/or high-resolution video) probably not
very. Given, though, that most people today _do_ run at 1024x768,
and typical new fast hard drives are running at 4 MB+/sec, the
standalone user could see a jump in performance that way.
The real people to benefit, however, will be the people who run
servers. ISA/EISA/VL just don't cut it in servers (for various
reasons), and PCI-based replacements will go a long way to solving
their bandwidth problems.
------------------------------------------------------------------------
That's what I know as best I know how to say it. E-Mail me with
suggestions/corrections and I'll post again.
--
Patrick Duffy, duffy@theory.chem.ubc.ca
"Evil is out there making hand-crafted mischief for the swap meet of villany."
-- The Tick